/**
 * Copyright© 2003-2019 浙江汇信科技有限公司, All Rights Reserved. <br/>
 * 描述: TODO <br/>
 *
 * @author framework generator
 * @date 2022年08月12日
 * @version 2.0
 */
package com.icinfo.cloud.provider.punish.csource.manage.mapper;

import com.icinfo.cloud.provider.punish.api.dto.CaseSourceInfoRecordPageQueryOfExtDto;
import com.icinfo.cloud.provider.punish.api.vo.CaseSourceInfoRecordOfExtVo;
import com.icinfo.cloud.provider.punish.csource.manage.model.CaseSourceRegisterMainInfo;
import com.icinfo.cloud.provider.punish.csource.manage.request.CaseSourceRegisterMainInfoRequest;
import com.icinfo.cloud.provider.punish.csource.manage.vo.CaseSourcePageNewVo;
import com.icinfo.framework.mybatis.mapper.common.Mapper;

import java.util.List;
import java.util.Map;

/**
 * 描述: 案源登记主表 case_source_register_main_info 对应的Mapper接口.<br>
 *
 * @author framework generator
 * @date 2022年08月12日
 */
public interface CaseSourceRegisterMainInfoMapper extends Mapper<CaseSourceRegisterMainInfo> {

    /**
     * 案源列表
     * @param request
     * @return
     */
    List<CaseSourcePageNewVo> caseSourceList(CaseSourceRegisterMainInfoRequest request);

    /**
     * 案源统计
     * @param request
     * @return
     */
    Integer caseSourceStatistical(CaseSourceRegisterMainInfoRequest request);

    /**
     * 获取案源处置前一天预警提醒列表（人社条线）
     * @return
     */
    List<Map<String, String>> selectAYWarning();

    /**
     * 描述: 案源时效统计
     *
     * @param request
     * @return com.icinfo.cloud.provider.punish.ucase.casemain.vo.ColorSumVo
     * @author zhanghongqiang
     * @Date 2022/10/26
     */
    Integer selectCaseSourceColourStatistic(CaseSourceRegisterMainInfoRequest request);
    /**
     * 查询待分派
     * @author liyafeng
     * @date 2023/2/7
      * @param request
     * @return {@link List< CaseSourcePageNewVo>}
     */
    List<CaseSourcePageNewVo> caseSourceToDispatchList(CaseSourceRegisterMainInfoRequest request);
    /**
     * 待分派统计
     * @author liyafeng
     * @date 2023/2/7
      * @param request
     * @return {@link Integer}
     */
    Integer selectCountToDispatch(CaseSourceRegisterMainInfoRequest request);
    /**
     * 查询已下发
     * @author liyafeng
     * @date 2023/2/7
      * @param request
     * @return {@link List< CaseSourcePageNewVo>}
     */
    List<CaseSourcePageNewVo> caseSourceIssuedList(CaseSourceRegisterMainInfoRequest request);
    /**
     * 已下发统计
     * @author liyafeng
     * @date 2023/2/7
      * @param request
     * @return {@link Integer}
     */
    Integer selectCountIssued(CaseSourceRegisterMainInfoRequest request);

    List<CaseSourceInfoRecordOfExtVo> selectCaseSourceInfoRecordByUserOfExt(CaseSourceInfoRecordPageQueryOfExtDto pageQuery);
}
